package com.lv.db.base;

import java.util.List;
import java.util.Map;


 public interface BaseDao<T> {

	/**
	 * 增加
	 * 
	 * @param t
	 */
	 void add(T t);

	/**
	 * 批量添加
	 * @param list
     */
	 void add(List<T> list);

	/**
	 * 删除
	 * 
	 * @param id
	 */
	 void delete(int id);

	/**
	 * 伪删除
	 * @param id
	 */
	 void deletePseudo(int id);
	/**
	 * 修改
	 * 
	 * @param t
	 */
	 void update(T t);

	/**
	 * 高级查询
	 * 
	 * @param map
	 * @return
	 */
	 List<T> find(Map<String, Object> map);

	/**
	 * 根据ID查询
	 * 
	 * @param id
	 * @return
	 */
	 T findById(int id);


	 /**
	  * 删除全部
	  */
	void  deleteAll();


	 /**
	  * 查询全部
	  * @return
	  */
	 Map<String,Object> getAll();
}
